Method for generating smart contents, method for executing smart contents and method for providing N-screen service of smart contents

ABSTRACT

A method for generating smart contents includes contents protected by a digital right management (DRM) technology; and metadata including information necessary to use the contents. Further, the method includes a smart code for protecting copyright of the contents and position information which the smart code is downloaded.

CROSS-REFERENCE TO RELATED APPLICATION(S)

The present invention claims priority of Korean Patent Application No.10-2011-0143601, filed on Dec. 27, 2011, which is incorporated herein byreference.

FIELD OF THE INVENTION

The present invention relates to copyright protection of multimediadata; more specifically, to a method for playing contents throughN-screen service by generating copyrighted contents, sharing anddistributing same to enable the N-screen service for the contents to beprotected by copyright.

BACKGROUND OF THE INVENTION

As well known in the art, digital right management (hereinafter referredto as ‘DRM’) technology is a technology which manages copyright ofdigital works, and may be used by only an authorized user. Further, theDRM technology may limit how to use, the number of usage, duration andthe like according to information such as permission limitation(condition).

The structure and the name of each object in the DRM technology areslightly different depending on various standards and commercialproducts, but the basic structure and operation method are very similarto each other.

The term of ‘N-screen’ is a technology or a service that one multimediacontents, e.g., movies, music and the like may be continuously enjoyedon the N number of devices. For example, the N-screen allows a broadcastor a movie being watched on TV at home to continuously watch through asmartphone or a tablet PC (or a notebook). That is, the following scenesfrom the last watched scene may be watched on the N number of anydevices. Further, it is possible to y watch additional information,e.g., unpublished images, location/props Information and the likethrough the smartphone or the tablet PC.

The N-screen is a kind of cloud service that users store formallypurchased multimedia contents not in their IT device but in a mediasever of their own mobile carrier and access to the media server throughinternet when necessary. Therefore, the users may watch the multimediacontents anytime, anywhere whenever any one of the tablet PC or thesmart phone.

On the other hand, when the N-screen service based on the digital rightsmanagement technology needs to be provided, some problems may occur.

The most important module in the DRM technology is a DRM agent. In orderto use the protected contents, the DRM agent acquires a permissionobject (or license) by contacting with a rights issuer, and controlssuch that the multimedia contents may be used depending on the givenconditions based on the acquired permission object (or license). Theoriginal contents protected by the DRM may be leaked when the DRM agentis exposed by attacks such as hacking. Therefore, it is essential thatenvironment for safely driving the DRM agent be provided.

Because of security reasons described above, the DRM agent is typicallymounted on the platform of the terminal, thus the DRM technology isdependent on the terminal. Because of characteristic in which the DRMtechnology is dependent on the terminal as described above, installing anew DRM agent takes a lot of work and cost. Actually, a lot of effortand time corresponding to, e.g., firmware update or operating systemupgrade costs to load a new DRM agent on the platform of the terminal.Currently, dozens of standards for the DRM technologies exist. Further,if a service provider or a developer is different, developed DRMtechnology become also different even in the same standard, thusnumerous DRM technologies currently exist.

In order to share the copyrighted contents on various terminals, thesame DRM needs to be loaded on each. However, such reasons describedabove, i.e., increase in time and cost when installing the new DRM,which is caused by the presence of numerous DRM technologies and theterminal-dependent characteristic of the DRM makes it difficult to sharethe copyrighted contents through the N-screen.

The scenarios of problems which may occur when such copyrighted contentsneed to be shared through the N-screen is as follows. For example, Maryand John purchases smartphones in which an OMA (Open Mobile Alliance)DRM is loaded with built-in, and they would receive the N-screen servicefor a copyrighted educational video at home. Here, the educational videowhich John wants to watch is Widevine DRM-protected video, and theeducational video which Mary wants to watch is Microsoft DRM-protectedvideo. At this time, because the smartphones purchased by Mary and Johnand DRM formats of the educational video are different from each other,these educational videos may not be serviced through the smartphonespurchased by Mary and John.

In reality, it is difficult for a manufacturer the smartphone toindividually load the DRM necessary to the environment of a buyer whenthey release the smartphone, and also difficult for the manufacturer toadditionally and separately load the DRM after the smartphone, i.e., aterminal is released. Finally, Mary and John may not receive thecopyrighted educational video protected by the DRM which they wantthrough the N-screen service.

Due to the reasons described above, the N-screen is mainly serviced forfree contents that is not protected by copyright of, the N-screen is avery limitedly serviced (e.g., only if the terminal is a particularoperator's service terminal and a specific manufacturer's terminal, itis possible to share the copyrighted contents) even if the N-screen isserviced for the copyrighted contents.

As the conventional technology for sharing the copyrighted contents,there are t DRM-compatible technologies such as Coral, EXIM using a DRMconversion and the like.

The DRM-compatible technologies use a conversion method based on amediator to convert the DRM contents to fit to the DRM loaded on theterminal to which the DRM contents would be transmit. The mediator is atype of the DRM for a predetermined conversion in the EXIM. For example,supposing that the DRM A is loaded on a terminal A and the DRM B isloaded on a terminal B. In order to share the copyrighted contentsreceived from the terminal A that is protected by the DRM A with theterminal B, the copyrighted contents need to be converted into a type ofthe DRM B. To do end, first, the terminal A converts (exports) contentsto which the DRM A is applied into the mediator Next, the terminal Bagain converts (imports) the mediator converted from the contents towhich the DRM A is applied into the contents to which the DRM B isapplied. The conversion of the contents may be performed in eachterminal and may be performed through a separate server.

The copyrighted contents may be shared using the DRM-compatibletechnology, but there are burdens that each operator develops theconversion technology that converts the contents into the mediator andconverts the converted mediator to the contents. Further, N*N type ofconversions (i.e., N*N number of conversions) are necessary to employthe numerous DRM contents and there are many limitation in employing theDRM-compatible technology. Actually, mutually reliable ways arenecessary for conversion between DRMs, and when functional differencecaused by the different function provided by each DRM exist, it isnecessary for the reliable third object to eliminate the functionaldifference. Consequently, the complex conversion process of the N*N typeis required.

SUMMARY OF THE INVENTION

In view of the above, the present invention provides an apparatus forgenerating contents, which generates the copyrighted contents(hereafter, referred to as “smart Contents”) so that the N-screenservice for the contents of which copyright needs to be protected may beenabled.

In addition, the present invention provides an apparatus for executingthe copyrighted contents shared and distributed through the N-screenservice the copyrighted contents.

Further, the present invention provides a method for providing theN-screen service, which supports executing and playing of the contentsthrough the N-Screen service in a network system including the apparatusfor generating contents and the apparatus for executing contents.

In accordance with a first aspect of the present invention, there isprovided a method for executing the smart contents, the methodincluding: extracting the smart code from the smart contents including acontents protected by a digital right management (DRM) technology, ametadata having information necessary to use the contents and a smartcode for protecting copyright of the contents; verifying the extractedsmart code; determining whether the verified smart code is a type ofexecutable (or installable) file; interpreting the smart code if thesmart code is not the type of the executable file; and executing theinterpreted smart code or the smart code in the type of the executablefile.

In accordance with a second aspect of the present invention, there isprovided a method for executing the smart contents, the methodincluding: extracting the smart code from the smart contents including acontents protected by a digital right management (DRM) technology, ametadata having information necessary to use the contents and a smartcode for protecting copyright of the contents; verifying the extractedsmart code; determining whether the verified smart code is a type ofexecutable (or installable) file; interpreting the smart code if thesmart code is not the type of the executable file; and executing theinterpreted smart code or the smart code in the type of the executablefile.

In accordance with a third aspect of the present invention, there isprovided a method for executing smart contents, the method including:receiving a smart contents including a contents protected by a digitalright management (DRM) technology, a metadata having informationnecessary to use the contents and position information which a smartcode for protecting copyright of the contents is downloaded; requestingand receiving the smart code by communicating with a smart code serverbased on the position information; verifying the received smart code;determining whether the verified smart code is a type of executable (orinstallable) files; if the smart code is not the type of executablefile, interpreting the smart code; and executing the interpreted smartcode or the smart code in the type of the executable file.

In accordance with a fourth aspect of the present invention, there isprovided a method for providing an N-screen service of smart contents,the method including: a service provider transmitting the smart contentsincluding a contents protected by a digital right management (DRM)technology, a metadata having information necessary to use the contentsand a smart code for protecting copyright of the contents to a userterminal of N number of the user terminals that requests the N-screenservice; the user terminal receiving the smart contents; the userterminal extracting the smart code from the smart contents to verify theextracted smart code; the user terminal determining whether the smartcode is a type of executable (or installable) file; if the smart code isnot the type of the executable file, the user terminal interpreting thesmart code; the user terminal executing the interpreted smart code orthe smart code in the type of the executable file; and a digital rightmanagement (DRM) agent executed (or installed) by the smart codetransmitting the protected contents to a contents player.

In accordance with the embodiments of the present invention, thecontents service providers or contents providers embeds a code (i.e.,the smart code) which is capable of protecting copyright of the contentsin the protected contents to distribute the protected contents and theuser terminal loaded with the smart code execution device that mayinterpret and execute the smart code may be provided with the N-screenservice without loading the additional DRM agent. That is, it ispossible to employ various DRM, and there is no need to install theseparate DRM for providing the N-screen service.

Therefore, the service provider's business area is expanded in theaspect of the business; business model in the type of N-screen thatprotects the copyright and employs various terminals may be expanded;the rights and interests of the buyer may protected by guaranteeingcontents buyer's right of private reproduction and right of deviceoption; it is possible to enable free contents sharing and consumptionif the necessary licenses is obtained; and the contents providers (CP)may apply the copyright protection technology to their won contents,thus profits may be secured.

BRIEF DESCRIPTION OF THE DRAWINGS

The objects and features of the present invention will become apparentfrom the following description of embodiments given in conjunction withthe accompanying drawings, in which:

FIG. 1 is a diagram showing configuration of a network for providing aDRM service to copyrighted contents that may be distributed through theN-screen service in accordance with an embodiment of the presentinvention;

FIGS. 2A and 2B are diagrams showing a configuration of the contentsprotected by the DRM technology and a type of the right object,respectively;

FIG. 3 is a diagram showing a configuration of the network for providingthe N-screen service of the DRM contents that the method for generatingthe copyrighted contents and the method for executing the copyrightedcontents may be applied to in accordance with the embodiment of thepresent invention;

FIG. 4 is a table showing a configuration of a smart contents generatedby the method for generating the copyrighted contents in accordance withthe embodiment of the present invention;

FIG. 5 is a flow chart showing the method for generating the smartcontents in accordance with the embodiment of the present invention;

FIG. 6 is a flow chart showing the method for executing the smartcontents in accordance with the first embodiment of the presentinvention;

FIG. 7 is a flow chart showing the method for executing the smartcontents in accordance with the second embodiment of the presentinvention;

FIG. 8 is a flow chart showing the method for executing the smartcontents in accordance with the third embodiment of the presentinvention; and

FIG. 9 is a flow chart showing the process of playing the smart contentsin accordance with the embodiment of the present invention.

DETAILED DESCRIPTION OF THE EMBODIMENTS

Advantages and features of the invention and methods of accomplishingthe same may be understood more readily by reference to the followingdetailed description of embodiments and the accompanying drawings. Theinvention may, however, be embodied in many different forms and shouldnot be construed as being limited to the embodiments set forth herein.Rather, these embodiments are provided so that this disclosure will bethorough and complete and will fully convey the concept of the inventionto those skilled in the art, and the invention will only be defined bythe appended claims.

In the following description of the present invention, if the detaileddescription of the already known structure and operation may confuse thesubject matter of the present invention, the detailed descriptionthereof will be omitted. The following terms are terminologies definedby considering functions in the embodiments of the present invention andmay be changed operators intend for the invention and practice. Hence,the terms need to be defined throughout the description of the presentinvention.

Hereinafter, embodiments of the present invention will be described indetail with reference to the accompanying drawings which form a parthereof.

FIG. 1 is a diagram showing a configuration of a network for providingthe DRM service to copyrighted contents that may be distributed throughthe N-screen service in accordance with the embodiment of the presentinvention.

A contents issuer 110 may encrypt and distribute contents, and generateprotected contents (DRM contents) to distribute same to the userterminals 130 and 140.

A rights issuer 120 may generate a rights object including permissioninformation, limitation information, a contents decryption key and thelike related to the contents, and then sell the generated rights objectto the user terminals 130 and 140. At this time, the sensitiveinformation within the rights object may be encrypted.

The DRM agents 131 and 141 are client modules having a function that theDRM agents 131 and 141 contact with the rights issuer 120 to obtain apermission object (or license) in order to use the protected contentsaccording to the given conditions based on the obtained permissionobject (or license); and is loaded on each user terminal 130 and 140.The rights object may be obtained through a process of purchasing thecontents.

The protected contents may be moved between the user terminals 130 and140, but the use of the protected contents is allowed after purchasingthe rights object from the rights issuer 120.

FIGS. 2A and 2B are diagrams showing a configuration of the contentsprotected by digital rights management (DRM) technology and a type ofthe rights object, respectively.

The protected contents 200 may be configured as follows. An ID(identifier) 201 may include the ID of the contents. The metadata 202may include an encryption scheme, a rights issuer's URL, contentsprovider's information, and the like. The encrypted contents 203 may bereferred to as an encrypted data. A digital signature 204 is signed withthe private key of the contents provider and may be used to verifycontents provider and the integrity.

The type of the rights object 300 is as follows. A Key 301 may store akey used for the encryption of the contents and the like and maygenerally include a CEK (Contents Encryption Key), but there may be adifference depending on the DRM product.

An ID 302 may include the rights issuer's ID, ID of the contents and thelike.

A permission information 303 may include information such as Play, View,Print, Copy, Move, Edit, Extract, Embed and the like.

Further, limit information (condition) 304 may define conditions ofusing the contents, may include information of period (duration of usingthe contents), count (the number of usage), trace (monitoring history ofuser's usage), domain (restricting the contents to specific user orgroup, or to be used only in certain areas) and the like.

As shown in the FIGS. 1 and 2, in order to provide an N-screen servicesharing the copyrighted contents between N number of user terminals, inorder for copyright protection, protection and control of the contentsand the like, the protected contents having a built-in code for thecopyright protection is distributed, each user terminal interprets andexecutes the built-in code for the copyright protection to protect thecopyright of the protected contents. In the description of theembodiment of the present invention, the code for the copyrightprotection will be referred to “smart code”. The smart code may includevarious type such as a machine language, an assembly language, bytecodes and the like, and the type of the smart code may be read,interpreted, and executed by a smart contents executor loaded in eachuser terminal.

In accordance with the embodiment of the present invention, thedistributed contents may be generated by the apparatus for generatingthe smart contents that is located on the side of a service provider inthe type of the smart contents, and the service provider distributes thegenerated smart contents. The smart contents is a self protectioncontents including an encrypted contents and the smart code forprotecting and controlling the contents, and may be provided through theN-screen service for protecting the copyright independent of the userterminal.

FIG. 3 is a diagram showing a configuration of the network for providingthe N-screen service of the DRM contents to which a method forgenerating the copyrighted contents and a method executing thecopyrighted contents may be applied in accordance with the embodiment ofthe present invention.

An apparatus 400 for generating a smart contents may combine a metadata411, a protected contents (DRM contents) 412, and a smart code 413, andgenerate a smart contents 410. The metadata 411 may be a headerincluding information necessary for the use of the smart contents 410.The metadata 411 may include a version, an ID of the smart code 413, andthe like. The protected contents 412 is a contents protected by the DRMand may be named as a DRM contents. The smart code 413 is a code forprotecting copyright of the DRM contents.

FIG. 4 is a table showing a configuration of the smart contentsgenerated by the method for generating the copyrighted contents inaccordance with the embodiment of the present invention. Among eachfield shown in FIG. 4, the SmartCodeData is the smart code 413, theProtectedContentData is the protected contents 412, and the rest of thefields are the metadata 411. Further, description of each field is asfollows.

Version: version information of the smart contents

CreatorID: an identifier of smart contents generator

SmartCodeType: a type of the smart code (0x01:non executable file, 0x02:executable file, 0x03: installable file, 0x04: URI information)

SmartCodeID: the identifier of the smart code

SmartCodeSize: a size of the smart code

DRMinfo: information of the DRM agent applied in the type of the smartcode, which is configured with additional metadata such as a DRM agentidentifier, a DRM version and the like.

ContentMediaType: a media type of the protected contents, e.g.,video/H.264

DRMContentsize: the size of the protected contents or all the method toknow the size such as the start and end point and the like.

ServiceProviderID: the identifier of the SP (Service Provider)

SmartContentAuthType: authentication method of the smart contents (0x01:code signature), and may be defined in various ways depending on thetype of authentication method

SigningParameter: signature information of the smart contents, which isconfigured with additional metadata such as signing algorithm, key size,signing mode, other parameter set and the like.

PlayerList: a player list option to allow interworking to drive the DRMcontents, and may be used only if the player list to allow theinterlocking exists SmartCodeData: smart code data (body)

ProtectedContentData: protected contents (DRM contents) data (body)

SmartContent signature: code signature of the smart contents (signedhash value)

The ‘Type’ shown in FIG. 4 represents the type of the each field and maybe changed by a developer.

Further, ‘Unit’ represents an unsigned integer, and ‘Var’ representsthat variable data structure may be arbitrarily defined and used.

The method for generating the smart contents using the apparatus 400 forgenerating the smart contents 410 may emloy various embodimentsdepending on the type of the smart code, or whether the smart code isinserted or the like.

First, the smart code 413 may be inserted in the smart contents 410itself as shown in FIG. 3, and may be inserted in the type of locationinformation, and the like that may download the smart code. Here, thelocation information may be expressed in various ways such as a URL(Uniform Resource Locator) or a URI (Uniform Resource Indicator) or thelike.

Further, when the smart code 413 itself is inserted into the smartcontents 410, some embodiments may be implemented. First, the smart codeseparately generated may be used. That is, the smart code serving as theDRM agent may be previously generated to be used. Second, a DRM agentexecutable (or installable) file may be used. That is, an agent fileexecutable itself or installable to a system may be used, not a type inwhich an apparatus 500 for executing the smart contents may interpret.Third, a smart code generator for converting a DRM agent code into thesmart code may be used. The smart code generator may convert theinputted DRM agent code into the smart code which may be recognized bythe apparatus 500 for executing the smart contents. At this time, smartcontents specifications for reference that is necessary for the smartcode generator to generate the smart code may be required. The smartcontents specifications are documents which defines standards of thesmart contents that the apparatus 500 for executing the smart contentsmay interpret. The smart code may be various types such as a machinelanguage, an assembly language, byte codes and the like, and may be atype which the apparatus 500 for executing the smart contents mayinterpret. The information about the type and operation of the smartcode may be defined in the smart contents specifications.

The process of generating the smart code by the smart code generator mayinclude inputting the DRM agent code in steps S711; confirming astandard of the smart contents in steps S712; and converting the DRMagent code according to the standards of the smart contents to generatethe smart code in steps S713.

The smart contents 410 generated by the apparatus 400 for generating thesmart contents may be transmitted to a service provider 610. The serviceprovider 610 may include various service providers providing thecontents such as smart TV operators, IPTV (Internet Protocol Television)operators, OTT (Over the Top) operators, web-based content providers andthe like. This service provider 610 may include the apparatus 400 forgenerating the smart contents. The service provider 610 may transmit thesmart contents 410 to a user terminal #1 620 receiving services.

The smart contents may be transmitted by various method such as VOD(video on demand), streaming, download and the like

The user terminal #1 620, #2 630, and #3 640 may include variousterminals which receives services such as smart TV, set-top equipmentfor IPTV/cable TV/satellite broadcasting, PC, tablet PC, smartphone andthe like, and the smart contents 410 may be directly transmitted andreceived therebetween.

The smart contents processor 510 of the apparatus 500 for executing thesmart contents in the user terminal #1 620 may verify the received smartcontents 410, extract a smart code 413 from the smart contents 410, andinterpret and execute the extracted smart code 413. The smart contents410 may be verified using various contents authentication method such asa method of verifying a digital signature of the apparatus 400 forgenerating the smart contents which generates the smart contents.

The smart code 413 may be converted into an executable file of a smartagent 520 through the verification process described above. The smartagent 520 may perform the function of the DRM agent. Thereafter, thesmart contents processor 510 may extract the DRM contents from theprotected contents 412 and transmit the extracted DRM contents to thesmart agent 520.

FIG. 6 is a flow chart showing the method for executing the smartcontents in accordance with the first embodiment of the presentinvention.

Specifically, FIG. 6 shows a process of executing the smart contentswhen the apparatus 400 for generating the smart contents generates thesmart content 410, and the smart code 413 is inserted into the smartcontents processor 510 not in the type of an executable file but in thetype that of being interpreted by the smart contents processor 510.

As shown in FIG. 6, the method for executing the smart contents mayinclude the smart contents processor 510 extracting the smart code fromthe smart contents in step S721; verifying the extracted smart code instep S722; determining whether the verified smart code is a form of theDRM agent executable (or installable) file, and if it is determined thatthe verified smart code is not the executable file, interpreting thesmart code in step S723; and executing the interpreted smart code instep S724.

FIG. 7 is a flow chart showing the method for executing the smartcontents in accordance with the second embodiment of the presentinvention. Specifically, FIG. 6 shows a process of executing the smartcontents when the apparatus 400 for generating the smart generates thesmart contents 410, and the smart code 413 is inserted into the smartcontents processor 510 in the type of being interpreted by the smartcontents processor 510.

As shown in FIG. 7, the method for executing the smart contents mayinclude the smart contents processor 510 extracting the smart code fromthe smart contents in step S731; verifying the extracted smart code instep S732; and executing the verified smart code in the type of theexecutable file in step S733.

FIG. 8 is a flow chart showing the method for executing the smartcontents in accordance with the third embodiment of the presentinvention. Specifically, FIG. 8 shows a process of executing the smartcontents when the apparatus for generating the smart contents generatesthe smart contents 410, and the smart code 413 is not inserted directlyinto the smart contents processor 510 but information of position whichmay download the smart code is inserted.

As shown in FIG. 8, the method for executing the smart contents mayinclude requesting and receiving, if the smart contents including theposition information that may download the smart code is received, thesmart code by communicating with the smart code server on the basis ofthe position information in steps S741 and S742; verifying the receivedsmart code in step S743; determining whether the verified smart code isthe type of an executable (or installable) file in step S744;interpreting the smart code in step S745 if it is determined that thesmart code is not the executable file in step S744; and executing theinterpreted smart code or the smart code in the form of the executablefile in step S746.

The smart contents processor 510 may be loaded in the apparatus 500 forexecuting the smart contents and a user terminal #1 620 in the type ofsecurity virtual machine, and the loading position thereof may bedifferent according to the degree of required security. For example, thesmart contents processor 510 may be loaded in a safe area of a platform(e.g., integrated into a kernel, loaded in the area of the platform'score library or system library), may be loaded in a contents player 621,or may exist in the type of executable files on a separate applicationlayer.

Comparing with the DRM agent of a conventional DRM system, the functionof the smart agent 520 is may be similar to or same as that of the DRMagent of the conventional DRM system. Further, configuration andoperation of the DRM agent may be different depending on various DRMstandards and commercial products.

The subsequent operation of the smart agent 520 is dependent on what isdefined in the smart code, thus may be varied because.

FIG. 9 is a flow chart showing the process of playing the smartcontents.

As shown in FIG. 9, the process of playing the smart contents mayinclude receiving the DRM contents and to determine whether the smartagent 520 has a license for playing the protected contents in steps S751and S752, respectively;

requesting and receiving the license by communicating with the licenseserver if the DRM contents do not have the license in steps S753 andS754;

confirming information of the license and decrypting the protectedcontents in steps S755 and S756; and

transmitting the decrypted contents the contents player in step S757.

The smart agent 520 may determine whether the DRM contents has thelicense for using the received DRM contents, if not, requests andreceives the necessary license by communicating with the license server660. This means that licensing procedures is performed.

The smart agent 520 received the license may decrypt the DRM contentstransmit the decrypted contents to the contents player 621 to drive sameafter confirming permission information, limit information, and thelike. Of course, if the license violates the permission information andthe limit information, the smart agent 520 may not decrypt the contents.

The contents player 621 may be different depending on the type of thecontents. For example, if the protected contents are a document type,the contents player 621 may be a viewer of the documents, if theprotected contents are an image type, the contents player 621 may be animage viewer, and if the protected contents are a video type, thecontents player 621 may be a video player.

The smart contents 410 may be distributed through the N-Screen byvarious methods. Specifically, same contents may be distributed from aserver to a plurality of terminals, a terminal received the contents maydistribute the received contents to other terminals. Further, thecontents may be transmitted and received on a file-by-file basis, or bystreaming type.

In accordance with the embodiment of the present invention, whengenerating, sharing and distributing the smart contents 410 to providethe N-screen service, the smart code may be inserted only into some ofthe plurality of the smart contents. In this case, the smart contentsprocessor 510 may execute the smart contents 410 into which the smartcode 413 is not inserted using the smart code inserted into other smartcontents. Alternatively, the smart contents processor 510 may executethe smart contents 410 into which position information that the smartcode 413 may be downloaded is not inserted using the positioninformation that has been inserted into other smart contents.

For example, when a user buys a music album including ten audio files,e.g., mp3 or the lime, the smart code may be inserted into the smartcontents of the audio file corresponding to the first track, and a userterminal may store the smart code, may generate the smart agent usingthe smart contents processor to protect copyrights using and may playthe audio files through the contents player 621. Further, when the smartcode is not inserted the smart contents of the audio file correspondingto the second track but only smart code ID (SmartCodeID field shown inFIG. 4) is represented, the user terminal may receive the smart contentsof the second audio file, confirm the smart code ID to determined thatthe smart agent is already received and loaded. Thereafter, the userterminal may process and play the smart contents using already receivedand loaded smart agent.

Combinations of each step in respective blocks of block diagrams and asequence diagram attached herein may be carried out by computer programinstructions. Since the computer program instructions may be loaded inprocessors of a general purpose computer, a special purpose computer, orother programmable data processing apparatus, the instructions, carriedout by the processor of the computer or other programmable dataprocessing apparatus, create devices for performing functions describedin the respective blocks of the block diagrams or in the respectivesteps of the sequence diagram.

Since the computer program instructions, in order to implement functionsin specific manner, may be stored in a memory useable or readable by acomputer aiming for a computer or other programmable data processingapparatus, the instruction stored in the memory useable or readable by acomputer may produce manufacturing items including an instruction devicefor performing functions described in the respective blocks of the blockdiagrams and in the respective steps of the sequence diagram. Since thecomputer program instructions may be loaded in a computer or otherprogrammable data processing apparatus, instructions, a series ofprocessing steps of which is executed in a computer or otherprogrammable data processing apparatus to create processes executed by acomputer so as to operate a computer or other programmable dataprocessing apparatus, may provide steps for executing functionsdescribed in the respective blocks of the block diagrams and therespective sequences of the sequence diagram.

Moreover, the respective blocks or the respective sequences may indicatemodules, segments, or some of codes including at least one executableinstruction for executing a specific logical function(s). In severalalternative embodiments, is noticed that functions described in theblocks or the sequences may run out of order. For example, twosuccessive blocks and sequences may be substantially executedsimultaneously or often in reverse order according to correspondingfunctions.

While the invention has been shown and described with respect to thepreferred embodiments, the present invention is not limited thereto. Itwill be understood by those skilled in the art that various changes andmodifications may be made without departing from the scope of theinvention as defined in the following claims.

What is claimed is:
 1. A method comprising: extracting smart code from afile including encrypted content protected by a digital right management(DRM) technology, a metadata having information necessary to use theencrypted content and a smart code for protecting copyright of thecontents; verifying the extracted smart code; determining whether theverified smart code is an executable file or an installable file; whenthe verified smart code is the installable file, interpreting the smartcode and executing the interpreted smart code; and when the verifiedsmart code is the executable file, executing the executable file,wherein the smart code is a DRM agent file.
 2. The method of claim 1,further comprising: determining whether a smart agent has a license forplaying the protected contents; if the smart agent does not have thelicense, requesting and receiving the license by communicating with alicense server; confirming information of the license to decrypt theprotected contents; and transmitting the decrypted and protectedcontents to a content player.
 3. A method for executing smart contents,the method comprising: receiving a smart contents including a contentsprotected by a digital right management (DRM) technology, a metadatahaving information necessary to use the contents and positioninformation which a smart code for protecting copyright of the contentsis downloaded; requesting and receiving the smart code by communicatingwith a smart code server based on the position information; verifyingthe received smart code; determining whether the verified smart code isan installable file or an executable file; when the verified smart codeis the installable file, interpreting the smart code and executing theinterpreted smart code; and when the verified smart code is theexecutable file, executing the executable file, wherein the smart codeis a DRM agent file.
 4. The method of claim 3, further comprising:determining whether a smart agent has a license for playing theprotected contents; if the smart agent does not have the license,requesting and receiving the license by communicating with a licenseserver; confirming information of the license to decrypt the protectedcontents; and transmitting the decrypted and protected contents to acontents player.
 5. A method for providing an N-screen service of smartcontents, the method comprising: a service provider transmitting a fileincluding encrypted content protected by a digital right management(DRM) technology, a metadata having information necessary to use theencrypted content and a smart code for protecting copyright of theencrypted content in accordance with an N-screen service; a userterminal receiving the file; the user terminal extracting the smart codefrom the file and verifying the extracted smart code; the user terminaldetermining whether the smart code is an executable file or aninstallable file; when the verified smart code is the installable file,interpreting the smart code and executing the interpreted smart code bythe user terminal; when the verified smart code is the executable file,executing the executable file by the user terminal; and transmitting theprotected smart code to a content player.
 6. The method of claim 5,wherein the service provider inserts the smart code into only some ofthe plurality of the smart contents, and wherein the user terminalexecutes the smart contents into which the smart code is not inserted byusing the smart code which has been inserted into other smart contents.7. The method of claim 5, wherein the service provider transmitting thesmart contents transmits the smart contents including a contentsprotected by a digital right management (DRM) technology, a metadatahaving information necessary to use the contents and positioninformation which a smart code for protecting copyright of the contentsis downloaded to the a user terminal of N number of the user terminalsthat requests the N-screen service.
 8. The method of claim 5, whereinthe user terminal extracting the smart code from the smart contents toverify the extracted smart code requests and receives the smart code bycommunicating with a smart code server based on the position informationto verify the received smart code.
 9. The method of claim 5, wherein theservice provider inserts the position information into only some of theplurality of smart contents, and wherein the user terminal executes thesmart contents into which the smart code is not inserted using the smartcode downloaded by using the position information which has beeninserted into other smart contents.